Global positioning system accuracy enhancement

ABSTRACT

Methods and systems enhance the accuracy of the global positioning system (GPS) using a low earth orbiting (LEO) satellite constellation. According to embodiments described herein, GPS data is received from GPS satellites at a GPS control segment and is used to create GPS correction data to be utilized by user equipment to correct errors within the GPS data. The GPS correction data is transmitted from the GPS control segment to a LEO ground segment, where it is uplinked to the LEO satellite constellation. To account for bandwidth constraints and minimize any performance degradation of the LEO satellites, the GPS correction data is broadcast to earth on a subset of the total number of available spot beams. The subset of spot beams is selected in part according to satellite angular velocity, bandwidth constraints, and message latency estimates.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a non-provisional patent application of U.S.Provisional Patent Application Ser. No. 61/109,709 entitled “GlobalPositioning System Accuracy Enhancement,” filed Jan. 8, 2008, which isincorporated herein by reference in its entirety.

TECHNICAL FIELD

The present disclosure relates generally to global positioning system(GPS) accuracy, and more particularly to enhancing the accuracy of a GPSsystem using a low earth orbiting (LEO) satellite constellation.

BACKGROUND

GPS technology utilizes a constellation of orbiting satellites thattransmit data to GPS receivers on earth. The GPS receivers use the datareceived from three or more satellites to determine location, speed,direction, and time. The GPS data transmitted by the GPS satellitesincludes atomic clock and satellite ephemeris data that is important tothe accurate determination of the position and other navigationalinformation corresponding to a GPS receiver that may be incorporatedinto any number of types of user equipment. However, this data, as wellother data transmitted by the GPS satellites, is subject to varioustypes of errors that can affect the precise determination of theposition of a GPS receiver as well as any other navigation solution. Asa result, the atomic clock and ephemeris data is estimated and uploadedto the GPS satellite approximately once per day. This correction data isused to compensate for the errors in the GPS data sent to the GPSreceivers on the ground.

A disadvantage of relying on these daily uploads is that the errorsinherent in the broadcast message from the GPS satellites growsproportional to the time from the latest upload and include a residualcomponent relative to the ability of the GPS control segment on theground to estimate these uploaded parameters. The latency associatedwith the clock and ephemeris estimates generated by the GPS controlsegment is created due in part to telemetry, tracking, and control (TTC)aspects of the GPS. For example, the TTC aspects of the GPS arecharacterized by a limited number of ground antennas, TTC bandwidthlimitations, large upload data size requirements for any potentialautonomous operations, and limitations associated with human control ofthe TTC system.

There are several techniques currently employed to minimize the errorsassociated with the GPS data transmitted from the GPS satelliteconstellation. However, these systems do not provide adequate correctiondata with adequate frequency to user equipment around the world. As aresult, user equipment remains subjected to errors in the GPS data to anextent that prevents accurate and precise calculation of navigationsolutions.

It is with respect to these considerations and others that thedisclosure made herein is presented.

SUMMARY

It should be appreciated that this Summary is provided to introduce aselection of concepts in a simplified form that are further describedbelow in the Detailed Description. This Summary is not intended to beused to limit the scope of the claimed subject matter.

Methods and systems described herein provide for GPS augmentationutilizing a LEO satellite constellation. By utilizing a LEO satelliteconstellation in the manners described below, GPS correction data can bedisseminated worldwide in a timely manner and used to reduce the errorsinherent in the GPS data received from the GPS satellites. As a result,the accuracy of the navigation solutions calculated by user equipmentreceiving the GPS data and the GPS correction data is significantlyenhanced. To utilize the LEO satellite constellation for broadcastingthe GPS correction data without compromising the performance of the LEOsatellites with respect to unrelated broadcast duties, the GPScorrection data is broadcast in messages utilizing only a subset of thetotal number of available spot beams for each LEO satellite. The subsetof spot beams is calculated utilizing a number of factors, including butnot limited to, satellite angular velocity, bandwidth constraints, andmessage latency estimates.

According to embodiments described herein, a method for providing GPScorrection data to user equipment includes receiving the GPS correctiondata. A subset of spot beams to be used to transmit the GPS correctiondata to earth is then determined for a LEO satellite. The subset of spotbeams is selected to maximize a swath width of the footprint of thesubset of spot beams on the earth. After selecting the subset of spotbeams, these spot beams are used to broadcast the GPS correction data toearth.

According to further embodiments, a system providing GPS correction datato user equipment includes a memory and a processor. The memory stores aprogram with instructions that allow the processor to receive GPScorrection data, to determine a subset of spot beams corresponding to aLEO satellite to be used to broadcast the GPS data to earth, and tobroadcast the GPS correction data in the subset of spot beams. Thesubset of spot beams provides a maximum swath width of the footprint ofthe subset of spot beams on the earth.

According to other embodiments disclosed herein, a system includes aground segment and a number of LEO satellites. The ground segmentreceives GPS correction data and uploads the data to a number of LEOsatellites. The LEO satellites receive the upload of GPS data, determinea subset of spot beams for broadcasting the GPS correction data toearth, and then broadcast the data in the subset of spot beams for useby receiving equipment on the ground. According to furtherimplementations, each LEO satellite estimates the time it will take tobroadcast the message according to various message and satelliteparameters, and uses this estimate along with the angular velocity ofthe satellite to select the subset of spot beams.

The features, functions, and advantages that have been discussed can beachieved independently in various embodiments of the present inventionor may be combined in yet other embodiments, further details of whichcan be seen with reference to the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a GPS augmentation system according tovarious embodiments presented herein;

FIG. 2 is a block diagram illustrating actions taken by various elementsof a GPS augmentation system according to various embodiments presentedherein;

FIG. 3 is a pictorial diagram illustrating representations oftransmission spot beam footprints on the earth and a selected subset ofspot beams corresponding to a LEO satellite of a GPS augmentation systemaccording to various embodiments presented herein;

FIG. 4 is a block diagram illustrating a broadcast channel architectureassociated with a LEO satellite spot beam transmission according tovarious embodiments presented herein;

FIG. 5 is a diagram illustrating LEO spot beam latency estimatecalculations according to various embodiments presented herein;

FIG. 6 is a chart illustrating the effects of various LEO spot beammessage factors on the latency associated with two differentillustrative sizes of correction messages according to variousembodiments presented herein;

FIG. 7 is a flow diagram illustrating a method for providing GPScorrection data according to various embodiments presented herein; and

FIG. 8 is a computer architecture diagram showing a computerarchitecture suitable for implementing the various computer systemsdescribed herein.

DETAILED DESCRIPTION

The following detailed description is directed to methods and systemsfor augmenting the GPS to enhance accuracy. As discussed briefly above,GPS data broadcasted by the GPS satellite constellation is subject toerrors that increase proportionally with the time from the last uploadto the GPS satellites, or space vehicles, from the GPS control segmenton the earth. To mitigate the error growth, and consequently increasethe accuracy of the navigational position determinations made by theuser equipment receiving GPS data from the GPS satellite constellation,the embodiments described below utilize a constellation of LEO spacevehicles to relay GPS correction data to user equipment.

The user equipment may then utilize the GPS correction data receivedfrom the LEO space vehicle and the received GPS data from the GPS spacevehicles to calculate position and other navigational data. Becauseembodiments described below utilize an existing constellation of LEOspace vehicles that have existing broadcasting responsibilities,embodiments provided herein select and utilize a subset of the spotbeams transmitted from the LEO space vehicles to broadcast the GPScorrection data. By doing so, existing equipment may be used tosignificantly enhance the accuracy of position and other navigationaldata calculations made by user equipment. Additionally, the use of LEOspace vehicles instead of a geosynchronous space vehicle providesadditional opportunities to establish line-of-sight communications withthe space vehicles as they traverse the sky, as opposed to situations inwhich the line-of-sight communication path with a geosynchronous spacevehicle is continuously blocked by facilities or terrain.

In the following detailed description, references are made to theaccompanying drawings that form a part hereof, and which are shown byway of illustration, specific embodiments, or examples. Referring now tothe drawings, in which like numerals represent like elements through theseveral figures, aspects of a GPS augmentation system will be described.FIG. 1 shows a GPS augmentation system 100 according to embodimentsprovided herein and will be utilized to present an overview of thevarious embodiments described in detail below with respect to FIGS. 2-8.The GPS augmentation system 100 includes a number of GPS space vehicles102, a number of LEO space vehicles 104, a GPS control segment 106, anda LEO ground segment 108 for providing GPS data 116 and GPS correctiondata 118 to GPS user equipment 110. For clarity purposes, the GPSconstellation of space vehicles is represented in FIG. 1 by a single GPSspace vehicle 102. Similarly, the LEO constellation of space vehicles isrepresented by a single LEO space vehicle 104. However, it should beappreciated that the GPS constellation of space vehicles and the LEOconstellation of space vehicles may include any number of space vehicles102 and 104, respectively.

As stated above, the LEO space vehicle 104 may be one of any number oflow earth orbiting satellites. According to various embodimentsdescribed herein, the LEO space vehicle 104 is a satellite that is partof the IRIDIUM satellite constellation, which is an existing LEOsatellite constellation that provides worldwide data and voicetelecommunication capabilities to satellite telephones. The IRIDIUMsatellite constellation utilizes approximately 76 satellites that orbitpole to pole, completing an orbit in approximately 100 minutes. TheIRIDIUM space vehicles are additionally capable of intersatellitecommunication, a feature that the embodiments described herein takeadvantage of in order to disseminate GPS correction data 118 among theconstellation and down to the GPS user equipment 110. Although theembodiments described below may be discussed with respect to the IRIDIUMsatellite constellation, it should be understood that any LEOconstellation may be utilized without departing from the scope of thisdisclosure.

The GPS control segment 106 includes one or more ground facilitieswithin the GPS augmentation system 100 that receive the GPS data 116from the GPS space vehicles 102 and create the GPS correction data 118.The GPS correction data 118 may be stored within the GPS control segment106, or in a database 112 or other memory or data repository that isdirectly or remotely connected to the GPS control segment 106. Accordingto various embodiments, the GPS correction data 118 includes ephemerisand clock corrections, although any type of correction data may bedisseminated to correct for any type of errors within the GPS data 116.The GPS control segment 106 forwards the GPS correction data 118 to theLEO ground segment 108 for transmission to the LEO space vehicles 104.The LEO space vehicles 104 then transmit the GPS correction data 118 tothe GPS user equipment 110. However, because according to variousembodiments, the LEO space vehicles 104 are tasked primarily with othertelecommunications broadcasting responsibilities, the GPS augmentationengine 114 receives the GPS correction data 118 and determines theproper communication parameters for transmitting the GPS correction data118 from the LEO space vehicle 104 to the GPS user equipment 110.

The GPS augmentation engine 114 may be hardware and/or software that isoperative to direct the transmittal of the GPS correction data 118 fromthe LEO space vehicles 104 to the GPS user equipment 110 in the variousmanners described below. While the GPS augmentation engine 114 is shownto be executing as part of the LEO ground segment 108, the GPSaugmentation engine 114 may alternatively reside at the LEO spacevehicles 104 or operate in part at both locations. The GPS augmentationengine 114 may operate according to pre-programmed logic or according todirect user input and control. The operations of the GPS augmentationengine 114 will be described in further detail below. The GPS userequipment may include any type of GPS receiver capable of receiving theGPS data 116 from the GPS space vehicles 102 and of receiving the GPScorrection data 118 from the LEO space vehicle 104. According to oneembodiment, the GPS data 116 and the GPS correction data 118 aretransmitted on similar but distinct frequencies to allow the GPS userequipment to utilize a single antenna for receiving transmissions fromthe GPS space vehicles 102 and from the LEO space vehicles 104.

Turning now to FIG. 2, various actions taken by the elements of the GPSaugmentation system 100 to provide GPS correction data 118 to the GPSuser equipment 110 according to various embodiments presented hereinwill now be described. For illustrative purposes, the actions performedby the various elements of the GPS augmentation system 100 have beennumbered in FIG. 2 and described as “events,” and will be discussedsequentially. It should be apparent in the following discussion thatvarious events may be performed in various sequences, includingsimultaneously, and are not limited to the sequential order in whichthey are numbered and discussed. Event 1 occurs when the GPS spacevehicles 102 broadcast the GPS data 116 to the earth. The GPS data 116is typically broadcast continuously over L1 and L2 frequencies. At Event2, the GPS control segment 106 monitors and receives the GPS data 116from the GPS space vehicles 102. The GPS control segment 106 utilizesthis GPS data 116 and known error correction calculation techniques toestimate clock and ephemeris corrections and create the GPS correctiondata 118 at Event 3. The GPS correction data 118 is formatted fortransmission to the LEO ground segment 108 at Event 4 and is transmittedto the LEO ground segment 108 at Event 5.

It should be appreciated that formatting the GPS correction data 118 fortransmission may include formatting the GPS correction data 118according to the particular transmission medium between the GPS controlsegment 106 and the LEO ground segment 108 and/or formatting the GPScorrection data 118 for transmission to or from the LEO space vehicles104. It should be further understood that the GPS correction data 118estimation and formatting may occur at the LEO ground segment 108instead of at the GPS control segment 106. In this alternativeembodiment, the LEO ground segment 108 may directly receive the GPS data116 from the GPS space vehicles 102 or may receive the GPS data 116 fromthe GPS control segment 106.

At Event 6, the LEO ground segment 108 receives the GPS correction data118 from the GPS control segment 106 and uplinks the GPS correction data118 to the LEO space vehicles 104 at Event 7. According to oneimplementation, the GPS correction data 118 is estimated and uploaded tothe LEO space vehicles 104 at least every 15 minutes. Although the GPScorrection data 118 may be estimated and uploaded to the LEO spacevehicles 104 at any time interval, the shorter the interval betweenre-calculated estimates, the more accurate the position and othernavigational data determined by the GPS user equipment 110 will be.According to various embodiments, the uploading of the GPS correctiondata 118 occurs via a secure gateway. For example, one embodiment thatutilizes the IRIDIUM satellite constellation as the LEO space vehicles104 uploads the GPS correction data 118 to the IRIDIUM satellites via asecure military gateway located in Hawaii, USA.

The LEO space vehicles 104 receive the uplink of the GPS correction data118 at Event 8, and at Event 9, determine a subset of spot beams to usefor broadcasting the GPS correction data 118 to the GPS user equipment110. Because the LEO space vehicles 104 are primarily used to broadcastdata other than the GPS correction data 118 to earth, embodimentsdisclosed herein utilize only a subset of the spot beams used totransmit data for the transmission of the GPS correction data 118.Moreover, the type of broadcast message must be selected to mostefficiently utilize the bandwidth of the LEO space vehicles 104 toprovide a spot beam footprint on the earth that maximizes a contiguousswath width of coverage for transmitting the GPS correction data 118without interfering with the primary telecommunication broadcastresponsibilities of the LEO space vehicles 104. The determination of themessage type and spot beam subset to utilize for transmitting the GPScorrection data 118 to the GPS user equipment 110 will be discussed infurther detail below with respect to FIGS. 3-7. It should be understoodthat these determinations may be made by the GPS augmentation engine 114aboard the LEO space vehicles 104, at the LEO ground segment 108, or acombination of both.

At Event 10, the LEO space vehicles 104 broadcast the GPS correctiondata 118 via the selected subset of spot beams to the earth. The GPSuser equipment 110 receives the GPS correction data 118 at Event 11. AtEvent 12, the GPS user equipment 110 receives the GPS data 116 from theGPS space vehicles 102. As stated above, receiving the GPS data 116 fromthe GPS space vehicles 102 may occur before, concurrently with, or afterreceiving the GPS correction data 118 from the LEO space vehicles 104.The GPS user equipment 110 applies the GPS correction data 118 to theGPS data 116 to determine the position and clock bias associated withthe applicable GPS space vehicles 102 and to subsequently determine theposition and other navigational data corresponding to the GPS userequipment 110 at Events 13 and 14.

FIG. 3 shows a pictorial diagram that shows an illustrative broadcastfootprint 302 of a single LEO space vehicle 104 as it passes from poleto pole over a portion of North America. According to one embodiment, anIRIDIUM space vehicle broadcasts data on 48 overlapping spot beams 304to create the approximate broadcast footprint 302. Due to bandwidthconstraints of the LEO space vehicles 104, it is not practical, and maynot be possible, to broadcast the GPS correction data 118 over all 48spot beams. Therefore, a subset of spot beams 310 is selected by the GPSaugmentation engine 114 to use for broadcasting the GPS correction data118 to earth. In choosing the subset of spot beams 310, an effort may bemade to maximize the contiguous swath width 306 and control thenecessary swath depth 308. Spot beams 304 are chosen across the diameterof the broadcast footprint 302 to maximize the contiguous swath width306 and ensure transmission of the GPS correction data 118 across thelargest possible ground area. The swath depth 308 should include onlythe number of spot beams 310 necessary to ensure that user equipment ata fixed point on the ground will receive the message from the LEO spacevehicle 104 for an adequate period of time. In choosing the spot beams304 to create the desired swath depth, the angular velocity of the LEOspace vehicles 104 and the estimated message latency will be used, asdescribed in detail below.

The example shown in FIG. 3 shows a subset of spot beams 310 thatincludes 17 spot beams 304 from the total 48 spot beams 304 availablefor transmission by the LEO space vehicles 104. These 17 spot beams 304that make up the subset of spot beams 310 overlap across the entirediameter of the broadcast footprint 302, ensuring that the GPScorrection data 118 is broadcast over the largest possible swath width306 of the LEO space vehicles 104. As stated above, the swath depth 308is chosen according to the desired length of time for the transmissionof the GPS correction data 118 to a particular fixed location within thebroadcast footprint, taking into account the angular velocity of the LEOspace vehicle 104 and the message latency corresponding to the amount oftime it takes to broadcast the entire message containing the GPScorrection data 118 to the earth.

For example, the 17 spot beams 304 chosen for inclusion within thesubset of spot beams 310 covers a swath depth 308 of approximately 10degrees. According to one embodiment, the LEO space vehicle 104 is anIRIDIUM satellite having an angular velocity of approximately 16.7seconds/degree. Therefore, it will take approximately 167 seconds totravel 10 degrees. GPS user equipment 110 within the broadcast footprintof the subset of spot beams 302 will be able to receive and demodulateany GPS correction data 118 for approximately 170 seconds (16.7seconds/degree×10 degrees). According to this embodiment, becauseapproximately 170 seconds is determined to be adequate for broadcastingthe GPS correction data 118 according to the predicted message sizes, 17spot beams 304 that span the broadcast footprint 302 and create a 10degree swath depth were selected as shown in FIG. 3 as the subset ofspot beams 310 to broadcast the GPS correction data 118 to earth. Thedetermination of the latency associated with broadcasting a messagecontaining the GPS correction data 118 will be described in detail belowwith respect to FIG. 5.

Turning now to FIG. 4, broadcast channel architecture 400 forbroadcasting within a spot beam 304 of a LEO space vehicle 104 accordingto various embodiments presented herein will be described. The broadcastincludes broadcast data 402, which may be the GPS correction data 118.According to the embodiment shown in which the LEO space vehicles 104are IRIDIUM space vehicles, the architecture associated with thebroadcast data 402 varies according to the burst type utilized forbroadcasting data to earth. Type I burst broadcast data 404 may containone undirected broadcast message and up to two directed broadcastmessages. Type II burst broadcast data 406 may contain up to fourdirected broadcast messages. Type III burst broadcast data 408 maycontain up to four general broadcast message words, totaling 256 bits ofdata.

According to one embodiment utilizing IRIDIUM space vehicles, the GPScorrection data 118 is broadcast to the earth within Type III burstbroadcast data since Type III is less often utilized by the LEO spacevehicles 104 and does not have a 100% duty cycle. These characteristicsallow for the GPS correction data 118 to be transmitted on the subset ofspot beams 310 without degrading the performance of the LEO spacevehicles 104 with regard to their primary telecommunications duties. Itshould be appreciated that other types of broadcast bursts may also beutilized within the scope of the present disclosure. Selecting the typeof broadcast architecture and the number of spot beams 304 within thesubset of spot beams 310 is accomplished with an attempt to utilizeminimum LEO constellation resources to broadcast the GPS correction data118 over the largest possible contiguous swath width 306 for an adequateperiod of time to allow the GPS user equipment 110 to receive up-to-dateGPS correction data 118 for use in determining position and othernavigational information.

FIG. 5 illustrates sample calculations for determining the messagelatency 502 for a Type III broadcast, which is the amount of timerequired to transmit the message containing the GPS correction data 118.The message latency 502 is equivalent to the number of frames 504 in themessage times the frame latency 506, which is the amount of timerequired to transmit one frame of the message containing the GPScorrection data 118. According to one embodiment utilizing the IRIDIUMspace vehicles, the frame latency 506 is equivalent to approximately 90milliseconds (ms). The number of frames 504 is shown to be equivalent tothe encoded message size 508 divided by the data per frame 510. Theencoded message size 508 is equivalent to the non-encoded message size514 multiplied by an inflation factor, F_(enc), 512. The inflationfactor 512 is a multiple that is greater than one that estimates theincrease in the non-encoded message size 514 that will result fromencoding the message.

The data per frame 510 is equivalent to the frame size 518 multiplied bya duty cycle factor, k_(III), 516. The duty cycle factor 516 is a numberbetween zero and one that represents the estimated duty cyclecorresponding to a selected broadcast burst type. The resulting latencyformula 520 for determining the message latency 502 can be viewed asequivalent to the frame latency 506 multiplied by a size factor 522,which is equivalent to the non-encoded message size 514 divided by theframe size 518, multiplied by a variable 524 that is equivalent to theinflation factor 512 divided by the duty cycle factor 516. A graph 600that plots the variable 524 versus the message latency 502 for twodifferent non-encoded message sizes 514 is shown in FIG. 6.

Looking at FIG. 6, the graph 600 shows the variable 524 along the x-axisand the message latency 502 along the y-axis. It can be seen that as thevariable 524 increases, the message latency 502 increases. In otherwords, the shorter the duty cycle and/or the larger the inflation factor512, then the longer the required amount of time will be to broadcastthe message that includes the GPS correction data 118. Two samplenon-encoded message sizes 514 are plotted on the graph 600, a 2,450 bitmessage 602 and an 880 bit message 604. These two sample message sizes514 are representative of a high data rate message option that utilizescycle redundancy check code and clock and ephemeris correction data anda low data rate message option that utilizes parity check code and clockonly correction data. To determine a baseline estimate of the messagelatency 502 for the 2,450 bit message 602, reasonable assumptions of a2× inflation factor 512 and a 20% duty cycle factor 516 may be used.Using the latency formula 520 shown in FIG. 5, with a frame latency 506of 90 ms and a frame size 518 of 256 bits, the message latency 502 isdetermined to be approximately 8.6 seconds: (90 ms)×(2,450 bits/256bits)×(2/0.2)=8.6 seconds.

Looking at the graph 600, it can be seen that if the inflation factor512 is 3× and the duty cycle is only 5%, then the message latency 502corresponding to the 2,450 bit message is approximately 51.7 seconds,which is still well within the approximately 170 second window providedby choosing 17 spot beams 304 in the subset of spot beams 310 in FIG. 3.It should be apparent that the GPS augmentation engine 114 may choose asubset of spot beams 310 for the LEO space vehicles 104 according to themessage size, and available or desired duty cycle of the correspondingcommunication message burst type used. Moreover, the message latency 502may also be controlled by shortening the non-encoded message size 514 ifthe required bandwidth is not available or other factors require doingso. Shortening the message size may be accomplished by reducing the sizeof the GPS correction data 118, which would reduce the accuracy of theresultant navigational data calculated by the GPS user equipment 110.

Using the IRIDIUM satellite constellation as the LEO space vehicles 104,embodiments described herein improve the accuracy of the navigationsolutions calculated by the GPS user equipment 110. According to variousembodiments, if the age of data (AoD) of the GPS correction data 118 isless than one hour from the time that it is calculated until receipt bythe GPS user equipment 110, then the nominal accuracy of the resultingnavigation solutions may be approximately 1.62 m (2-σ) range, with auser differential range error (UDRE) of approximately 0.29 m (1-σ) and auser equipment error (UEE) of approximately 0.75 m (1-σ). Additionally,the horizontal accuracy of the navigation solution providing a position,velocity, and time estimate is approximately 2.35 m (2-σ), with thevertical accuracy being approximately 4.15 m (2-σ). It should beappreciated that the disclosure herein is not limited to these accuracyand error results, which are provided as examples of improvements overconventional GPS technologies.

Turning now to FIG. 7, an illustrative routine 700 will be described foraugmenting GPS data 116 to enhance the accuracy of correspondingnavigation solutions according to various embodiments presented herein.The routine 700 will be described with respect to the GPS augmentationsystem 100 shown in FIG. 1. It should be appreciated that the logicaloperations described herein are implemented (1) as a sequence ofcomputer implemented acts or program modules running on any of theelements of the GPS augmentation system 100 and/or (2) as interconnectedmachine logic circuits or circuit modules within any of the elements ofthe GPS augmentation system 100. The implementation is a matter ofchoice dependent on the performance requirements of the computingsystem. Accordingly, the logical operations described herein arereferred to variously as operations, structural devices, acts, ormodules. These operations, structural devices, acts and modules may beimplemented in software, in firmware, in special purpose digital logic,and any combination.

The routine 700 begins at operation 702, where the GPS augmentationengine 114 receives the GPS correction data 118 from the GPS controlsegment 106. As described above, according to alternative embodiments,the LEO ground segment 108 may calculate the GPS correction data 118instead of the GPS control segment 106. In these alternativeembodiments, the LEO ground segment 108 may receive the GPS data 116from the GPS control segment 106 or directly from the GPS space vehicles102. From operation 702, the routine 700 continues to operation 704,where the GPS augmentation engine 114 determines the communicationmessage parameters for transmitting the GPS correction data 118. Thecommunication message parameters may include the information required todetermine the message latency 502, such as the non-encoded message size514 and the inflation factor 512.

Other information needed to calculate the message latency 502 isdetermined at operation 706, where the GPS augmentation engine 114determines the constraints associated with the LEO space vehicles 104.For example, the GPS augmentation engine 114 may calculate or retrievethe angular velocity to be used in determining the subset of spot beams310 according to the message latency 502, retrieve or query for thebandwidth constraints of the LEO space vehicles 104 according to theircurrent operational status, which may include data regarding thecommunication message types in use by the LEO space vehicles 104.

From operation 706, the routine 700 continues to operation 708, wherethe GPS augmentation engine 114 estimates the message latency 502utilizing the determined communication message parameters and theconstraints associated with the LEO space vehicles 104. This estimationmay be made using the formula 520 shown in FIG. 5 as described above.The routine 700 continues from operation 708 to operation 710, where theGPS augmentation engine 114 determines the subset of spot beams 310 touse to broadcast the GPS correction data 118 to the earth. According tovarious embodiments, the subset of spot beams 310 may be selected tomaximize the contiguous swath width of the LEO space vehicles 104, whileminimizing the impact on other telecommunications broadcasts, as shownand described above with respect to FIG. 3. From operation 710, theroutine 700 continues to operation 712, where the GPS correction data118 is broadcast over the subset of spot beams 310 to the GPS userequipment 110.

Referring now to FIG. 8, an illustrative computer architecture for acomputing device containing the GPS augmentation engine 114 utilized inthe various embodiments presented herein will be discussed. Aspreviously stated, the GPS augmentation engine 114 may reside at the LEOground segment 108, at the LEO space vehicle 104, or a combinationthereof. The computer architecture shown in FIG. 8 may illustrate aconventional desktop, laptop computer, or server computer. The computerarchitecture shown in FIG. 8 includes a central processing unit 802(CPU), a system memory 808, including a random access memory (RAM) 814and a read-only memory (ROM) 816, and a system bus 804 that couples thememory to the CPU 802. A basic input/output system (BIOS) containing thebasic routines that help to transfer information between elements withinthe computing device, such as during startup, is stored in the ROM 816.The computing device further includes a mass storage device 810 forstoring an operating system 818, application programs, and other programmodules, which will be described in greater detail below.

The mass storage device 810 is connected to the CPU 802 through a massstorage controller (not shown) connected to the bus 804. The massstorage device 810 and its associated computer-readable media providenon-volatile storage for the computing device. Although the descriptionof computer-readable media contained herein refers to a mass storagedevice, such as a hard disk or CD-ROM drive, it should be appreciated bythose skilled in the art that computer-readable media can be anyavailable media that can be accessed by the GPS augmentation engine 114.

By way of example, and not limitation, computer-readable media mayinclude volatile and non-volatile, removable and non-removable mediaimplemented in any method or technology for storage of information suchas computer-readable instructions, data structures, program modules orother data. For example, computer-readable media includes, but is notlimited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid statememory technology, CD-ROM, digital versatile disks (DVD), HD-DVD,BLU-RAY, or other optical storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by the GPS augmentation engine 114.

According to various embodiments, the computing device containing theGPS augmentation engine 114 may operate in a networked environment usinglogical connections to remote computers through a network 820. Thenetwork 820 may include a wireless network such as, but not limited to,a Wireless Local Area Network (WLAN) such as a WI-FI network, a WirelessWide Area Network (WWAN), a Wireless Personal Area Network (WPAN) suchas BLUETOOTH, a Wireless Metropolitan Area Network (WMAN) such a WiMAXnetwork, a cellular network, or a satellite network. The network 820 mayalso be a wired network such as, but not limited to, a wired Wide AreaNetwork (WAN), a wired Local Area Network (LAN) such as the Ethernet, awired Personal Area Network (PAN), or a wired Metropolitan Area Network(MAN). The network 820 may also include the Internet such that thenetwork communications occur via wireless or wired connections to theInternet.

The computing device may connect to the network 820 through a networkinterface unit 806 connected to the bus 804. It should be appreciatedthat the network interface unit 806 may also be utilized to connect toother types of networks and remote computer systems. The computingdevice may also include an input/output controller 812 for receiving andprocessing input from a number of other devices, including a keyboard,mouse, or electronic stylus (not shown in FIG. 8). Similarly, aninput/output controller may provide output to a display screen, aprinter, or other type of output device (also not shown in FIG. 8).

As mentioned briefly above, a number of program modules and data filesmay be stored in the mass storage device 810 and RAM 814 of thecomputing device, including the operating system 818 suitable forcontrolling the operation of a networked desktop or server computer,such as the WINDOWS XP or WINDOWS VISTA operating systems from MICROSOFTCORPORATION of Redmond, Wash. Other operating systems, such as the LINUXoperating system or the OSX operating system from APPLE COMPUTER, INC.may be utilized. It should be appreciated that the implementationspresented herein may be embodied using a desktop or laptop computer orany other computing devices or systems or combinations thereof.

The mass storage device 810 and RAM 814 may also store one or moreprogram modules. In particular, the mass storage device 810 and the RAM814 may store the GPS augmentation engine 114, the GPS correction data118, the GPS data 116, as well as any other program modules describedabove with respect to FIG. 1. Based on the foregoing, it should beappreciated that apparatus, systems, methods, and computer-readablemedia for augmenting the GPS to enhance accuracy are provided herein.Although the subject matter presented herein has been described inlanguage specific to computer structural features, methodological acts,and computer readable media, it is to be understood that the inventiondefined in the appended claims is not necessarily limited to thespecific features, acts, or media described herein. Rather, the specificfeatures, acts and mediums are disclosed as example forms ofimplementing the claims.

The subject matter described above is provided by way of illustrationonly and should not be construed as limiting. Various modifications andchanges may be made to the subject matter described herein withoutfollowing the example embodiments and applications illustrated anddescribed, and without departing from the true spirit and scope of thepresent invention, which is set forth in the following claims.

1. A method for providing global positioning system (GPS) correctiondata to user equipment, the method comprising: receiving GPS correctiondata; determining a subset of spot beams corresponding to a low earthorbiting (LEO) satellite of a plurality of LEO satellites, such that afootprint of the subset of spot beams maximizes a contiguous swath widthof the LEO satellite; and broadcasting the GPS correction data in thesubset of spot beams to the earth.
 2. The method of claim 1, whereinreceiving the GPS correction data comprises receiving the GPS correctiondata at a ground segment associated with the plurality of LEOsatellites, and wherein The method further comprises uploading the GPScorrection data to the LEO satellite from the ground segment.
 3. Themethod of claim 2, wherein the ground segment comprises a secure groundgateway for uploading the GPS correction data.
 4. The method of claim 1,further comprising determining GPS correction data at a control segmentassociated with a plurality of GPS satellites, the GPS correction datacomprising at least clock and ephemeris correction data.
 5. The methodof claim 1, wherein receiving the GPS correction data occurs at leastevery 15 minutes.
 6. The method of claim 1, further comprisingestimating the message latency associated with broadcasting the GPScorrection data, wherein determining the subset of spot beamscorresponding to the LEO satellite comprises determining the subset ofspot beams according to an angular velocity of the LEO satellite and theestimated message latency.
 7. The method of claim 6, wherein estimatingthe message latency comprises multiplying a frame latency value and asize proportion value and a variable, wherein the frame latency valuecomprises an amount of time required to transmit one frame of a messagecontaining the GPS correction data, wherein the size proportion valuecomprises a ratio of a size of the message when not encoded to a size ofone frame of the message, and wherein the variable comprises a ratio ofan inflation factor corresponding to an increase in the size of themessage after encoding to a duty cycle factor corresponding to anestimated duty cycle for a communication message burst type to be usedfor broadcasting the message containing the GPS correction data.
 8. Themethod of claim 1, further comprising: analyzing current communicationmessage burst types associated with the LEO satellite to determinecurrent bandwidth constraints for broadcasting the GPS correction data;and selecting a communication message burst type for broadcasting theGPS correction data according to the current bandwidth constraints,wherein broadcasting the GPS correction data in the subset of spot beamsto the earth comprises broadcasting the GPS correction data in thesubset of spot beams to the earth utilizing the selected communicationmessage burst type.
 9. The method of claim 8, wherein the LEO satelliteis operative to perform a primary function that is not broadcasting theGPS correction data, and wherein selecting the communication messageburst type for broadcasting the GPS correction data according to thecurrent bandwidth constraints comprises selecting the communicationmessage burst type having characteristics that best enables theperformance of the primary function.
 10. The method of claim 9, whereinthe plurality of LEO satellites comprises a plurality of IRIDIUMsatellites, and wherein selecting the communication message burst typehaving characteristics that best enables the performance of the primaryfunction comprises selecting a Type III burst communication message. 11.A system for providing GPS correction data to user equipment comprising:a memory for storing a program containing code for providing GPScorrection data to user equipment; and a processor functionally coupledto the memory, the processor being responsive to computer-executableinstructions contained in the program and operative to: receive GPScorrection data; determine a subset of spot beams corresponding to a LEOsatellite of a plurality of LEO satellites, such that a footprint of thesubset of spot beams maximizes a contiguous swath width of the LEOsatellite; and broadcast the GPS correction data in the subset of spotbeams to the earth.
 12. The system of claim 11, wherein the memory andthe processor reside within the LEO satellite, and wherein the GPScorrection data is received from a ground segment associated with theplurality of LEO satellites.
 13. The system of claim 11, wherein theprocessor is further operative to estimate the message latencyassociated with broadcasting the GPS correction data, and whereindetermining the subset of spot beams corresponding to the LEO satellitecomprises determining the subset of spot beams according to an angularvelocity of the LEO satellite and the estimated message latency.
 14. Thesystem of claim 13, wherein estimating the message latency comprisesmultiplying a frame latency value and a size proportion value and avariable, wherein the frame latency value comprises an amount of timerequired to transmit one frame of a message containing the GPScorrection data, wherein the size proportion value comprises a ratio ofa size of the message when not encoded to a size of one frame of themessage, and wherein the variable comprises a ratio of an inflationfactor corresponding to an increase in the size of the message afterencoding to a duty cycle factor corresponding to an estimated duty cyclefor a communication message burst type to be used for broadcasting themessage containing the GPS correction data.
 15. The system of claim 11,wherein the processor is further operative to: analyze currentcommunication message burst types associated with the LEO satellite todetermine current bandwidth constraints for broadcasting the GPScorrection data; and select a communication message burst type forbroadcasting the GPS correction data according to the current bandwidthconstraints, wherein broadcasting the GPS correction data in the subsetof spot beams to the earth comprises broadcasting the GPS correctiondata in the subset of spot beams to the earth utilizing the selectedcommunication message burst type.
 16. A system for providing UPScorrection data to user equipment, comprising: a ground segmentoperative to receive GPS correction data, and upload the GPS correctiondata to a plurality of LEO satellites; and a plurality of LEOsatellites, each LEO satellite operative to receive the upload of theGPS correction data, determine a subset of spot beams for broadcastingthe GPS correction data to the earth, and broadcast the UPS correctiondata in the subset of spot beams to the earth for receipt and use by theuser equipment.
 17. The system of claim 16, further comprising a GPScontrol segment operative to: receive uncorrected GPS data from aplurality of G satellites; create the UPS correction data from theuncorrected GPS data; and transmit the GPS correction data to the groundsegment.
 18. The system of claim 16, wherein each LEO satellite isfurther operative to estimate the message latency associated withbroadcasting the UPS correction data, and wherein determining the subsetof spot beams for broadcasting the UPS correction data to the earthcomprises determining the subset of spot beams according to an angularvelocity of the LEO satellite and the estimated message latency.
 19. Thesystem of claim 18, wherein estimating the message latency comprisesmultiplying a frame latency value and a size proportion value and avariable, wherein the frame latency value comprises an amount of timerequired to transmit one frame of a message containing the GPScorrection data, wherein the size proportion value comprises a ratio ofa size of the message when not encoded to a size of one frame of themessage, and wherein the variable comprises a ratio of an inflationfactor corresponding to an increase in the size of the message afterencoding to a duty cycle factor corresponding to an estimated duty cyclefor a communication message burst type to be used for broadcasting themessage containing the GPS correction data.
 20. The system of claim 16,wherein each LEO satellite is further operative to: analyze currentcommunication message burst types associated with the LEO satellite todetermine current bandwidth constraints for broadcasting the GPScorrection data; and select a communication message burst type forbroadcasting the GPS correction data according to the current bandwidthconstraints, wherein broadcasting the GPS correction data in the subsetof spot beams to the earth comprises broadcasting the GPS correctiondata in the subset of spot beams to the earth utilizing the selectedcommunication message burst type.